
package com.hlkj.pay.app.merchant.ext.dto.access;
/*
 * Hlpay-Plus aggregate payment system.
 * Copyright (c) 2024-2025 Hlpay Team Copyright has the right of final interpretation.
 */

import com.hlkj.pay.dto.merchant.MerchantAccessSignLink;
import com.hlkj.pay.dto.merchant.MerchantAlipayConfigDto;
import com.hlkj.pay.dto.merchant.MerchantElectronicContractDto;
import com.hlkj.pay.dto.merchant.MerchantWechatConfigDto;
import com.hlkj.pay.dto.merchant.ProviderChannelFeeConfigList;
import com.hlkj.pay.dto.merchant.*;
import com.hlkj.pay.enums.MerchantEnum;
import com.hlkj.pay.infrastructure.model.merchant.*;

import com.hlkj.pay.infrastructure.model.pay.PayChannelRequestDO;
import lombok.Data;

import java.util.List;

/**
 * @author HlpayTeam
 * @date 2024/09/26 10:21
 */
@Data
public class ChannelMerchantAccessSignContext extends ChannelMerchantAccessCommonContext {

    /**
     * 进件主表信息
     */
    private MerchantAccessInfoDO merchantAccessInfoDO;

    /**
     * 联系人信息
     */
    private MerchantAccessCertInfoDO merchantAccessContact;

    /**
     * 经营信息
     */
    private MerchantAccessBusinessDO merchantAccessBusiness;

    /**
     * 费率配置
     */
    private List<ProviderChannelFeeConfigList> merchantFeeConfigList;
    /**
     * 进件结算卡信息
     */
    private MerchantAccessCardDO merchantAccessCard;

    /**
     * 进件营业执照信息
     */
    private MerchantAccessLicenseDO merchantAccessLicense;

    /**
     * 进件法人信息
     */
    private MerchantAccessCertInfoDO merchantAccessLegal;

    /**
     * 进件状态
     */
    private MerchantEnum.ACCESS_STATUS accessStatus;

    /**
     * 签署链接
     */

    private List<MerchantAccessSignLink> signLinks;

    /*
     * 第三方辅助状态
     * 
     * @see com.hlkj.pay.enums.MerchantEnum.CHANNEL_CONFIG_STATUS
     */
    private MerchantEnum.CHANNEL_CONFIG_STATUS auditStatus;

    private PayChannelRequestDO payChannelRequestDO;

    /**
     * 微信dto
     */

    private MerchantWechatConfigDto merchantWechatConfigDto;

    /**
     * 支付宝
     */
    private MerchantAlipayConfigDto merchantAlipayConfigDto;

    /**
     * 签约上报信息
     */
    private MerchantElectronicContractDto merchantElectronicContractDto;

}
